package com.jxb.five;

/**
 * 比较版本号
 *
 * 示例 1：
 * 输入：version1 = "1.01", version2 = "1.001"
 * 输出：0
 * 解释：忽略前导零，"01" 和 "001" 都表示相同的整数 "1"
 * 示例 2：
 * 输入：version1 = "1.0", version2 = "1.0.0"
 * 输出：0
 * 解释：version1 没有指定下标为 2 的修订号，即视为 "0"
 * 示例 3：
 * 输入：version1 = "0.1", version2 = "1.1"
 * 输出：-1
 *
 * @author jiaobo
 * @date Created in 2025/1/3 21:58
 **/
public class CompareVersionNumbers_165 {

    public static void main(String[] args) {

    }

    /*使用双指针来实现*/
    public int compareVersion(String version1, String version2) {
        int i = 0,j=0;
        int v1L = version1.length();
        int v2L = version2.length();
        while (i<v1L || j<v2L) {
            int num1 = 0,num2 = 0;
            while (i<v1L && version1.charAt(i) != '.') {
                num1 = num1 * 10 + version1.charAt(i++) - '0';
            }
            while (j < v2L && version2.charAt(j) != '.') {
                num2 = num2 * 10 + version2.charAt(i++) - '0';
            }
            if (num1 > num2) {
                return 1;
            }
            else if (num1 < num2) {
                return -1;
            }
            i++;
            j++;
        }
        return 0;
    }



}
